x86: update microcode support
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 20 Jan 2009 13:27:08 +0000 (13:27 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 20 Jan 2009 13:27:08 +0000 (13:27 +0000)
commit10de212aa9a4f9623f47a48c06805164f236cca4
treec1f40054a5be2ddd9f6586e582007b6c98ce7f29
parent93d98953f7249efe10ddcb71888fc14cdbdbf30a
x86: update microcode support

- Container header file holding the patches changed. Update to new
  format.
- in cpu_request_microcode() move heap re-allocation & copy out of the
  loop.
  Side-effect: Remove limitation in only supporting fixed sized
  microcode patches. Also simplifies code a lot.
- cleanup: use rdmsr and wrmsrl instead of inlined assembler
- pass ucode_cpu_info as arguments. Improves reentrancy.
- cleanup: simplify struct ucode_cpu_info and remove
  get_matching_microcode hook. Side-effect: reduces kernel size.
- bugfix: fix xen kernel memory leak in error path. equiv_cpu_table
  was not freed.

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
xen/arch/x86/microcode.c
xen/arch/x86/microcode_amd.c
xen/arch/x86/microcode_intel.c
xen/include/asm-x86/microcode.h